This invention relates generally to contact centers, also variously referred to as call centers, automatic call distribution systems, and telemarketing systems, and relates specifically to performance-monitoring of such centers.
Monitoring the performance of a contact center is an important aspect of managing its operation. Such monitoring has to be periodic but reconfigurable, and should also take into account the dynamics that determine the performance of the contact center, such as the changing nature of its attributes and performance expectations.
The performance of a contact center is a measure of how well the contact center staff who are assigned to a selected set of skills are doing, as measured by a set of metrics. For example, one may want to monitor whether xe2x80x9csalesxe2x80x9d agents have an xe2x80x9caverage speed of answerxe2x80x9d that is consistently less than ten seconds. However, the dynamics of contact centers demand that such metrics automatically reflect the changing needs of the contact center. For instance, in the above example, one may want to change the monitoring criteria over time to xe2x80x9caverage speed of answerxe2x80x9d between 8 and 15 seconds. An arrangement for monitoring the performance of a contact center should accommodate such changing metrics over time. In addition, the arrangement should be universally applicable: that is, it should not be contact center- or customer-specific, in order to accommodate monitoring of a plurality of contact centers each with its own performance measurements. Consequently, the determination of a metric for a given contact center should be done at run-time, right before that contact center is monitored. Moreover, many contact centers are distributed: that is, agents for a given skill can be located at geographically distributed locations. Thus, the arrangement should not only assess a given contact center""s performance, but it should also compare performance across the contact center""s locations to determine whether all of them are performing consistently. The above issues are further complicated by the fact that contact centers, whether centralized or distributed, can be driven by more than one switch (ACD), that skill-mapping attributes can vary across different locations of distributed contact centers, and that time zones can vary between different locations of distributed contact centers. These facts need to be taken into account during monitoring.
Existing contact-center monitoring arrangements tend to have a narrow focus and tend to concentrate either on call routing or on monitoring a limited set of attributes while the contact center is operational. Examples of the limited monitoring done by conventional arrangements include picking a random interval and agent to determine his or her performance, or monitoring activities such as keyboard or pointer inputs of agents to obtain context-sensitive information regarding their productivity, or monitoring the customer that the agent is interacting with.
This invention is directed to meeting these and other needs and solving these and other problems of the prior art. Illustratively, a method of monitoring contact-center performance automates the monitoring process by using a database schema that records the contact center to be monitored, its skills, the locations where the skills are located (in the case of a distributed contact center), the objective or target value for a given skill attribute (such as average speed of answer, maximum delay, etc.), the acceptable deviation from the objective (tolerance), the periodicity or frequency of the monitoring, and the comparison operator needed to determine how a given observed or actual value of the skill attribute is to be compared with its specified objective and tolerance. The performance metric determination is thus dynamic: that is, performance is determined xe2x80x9con the flyxe2x80x9d at run time at the time that the contact center is polled for performance-indicative data, and there is no a-priori fixed formula of how to compare an observed skill-attribute value with its specified objective and tolerance to determine a metric for a specified contact center. The result of each poll is sent to a party that is responsible for the contact center, such as a requestor who requested the monitoring.
When a skill is distributed across several locations of a distributed contact center, the method also determines the maximum deviation of the actual values of the skill attribute in those locations, in addition to checking whether the actual value of the skill attribute at each location satisfies the performance criteria. The skill attributes for which performance is monitored, the number of skills, and the number of contact center locations over which a skill can be distributed is essentially unlimited: that is, the method can monitor all the skills in a contact center at all locations over which the skills are distributed.
Generally according to the invention, a method of monitoring performance of one or more contact centers comprises the following functions. A skill attribute, an attribute objective, a comparison operator, and a comparison tolerance for one or more skills of each of the contact centers is specified, illustratively by one or more requesters. The requesters also preferably specify a periodicity for repeating the monitoring of the contact centers, which results in the following functions being repeated for a contact center every corresponding period. Performance data for each of the one or more skills are automatically obtained from the one or more contact centers. An actual value of the specified skill attribute is automatically determined from the obtained data for each of the one or more skills of the one or more contact centers. A difference between the actual value and the specified attribute objective is then automatically compared against the specified comparison tolerance using the specified comparison operator, for each of the one or more skills of the one or more contact centers. Finally, each comparison that does not satisfy its comparison operator is automatically reported.
Owing to the complexity of the monitoring criteria, the tasks performed by the method are extremely cumbersome and difficult to xe2x80x9cdo by hand.xe2x80x9d This precludes this type of activity from being emulated by a human. More importantly, the method removes chances for erroneous analysis and conclusions about a monitored contact center that can result from manual monitoring by a human. Instead, the method effects the monitoring automatically without human intervention. Also, unlike conventional monitoring schemes, this method is non-obtrusive and may be performed independently of whether the monitored contact center is operating or not at the time that it is polled.
While the invention has been characterized above in terms of method, it also encompasses apparatus that performs the method. The apparatus preferably includes an effectorxe2x80x94any entity that effects the corresponding step, unlike a meansxe2x80x94for each step. The invention further encompasses any computer-readable medium containing instructions which, when executed in a computer, cause the computer to perform the method steps.